package com.fm618.flex4
{
	import flash.display.Bitmap;
	import flash.display.Sprite;
	
	import mx.controls.ProgressBar;
	import mx.core.UIComponent;
	
	public class FmProgressBar extends UIComponent
	{
		private var process0:ProgressBar; //进度条
		private var sprite1:Sprite; //场景遮罩
		
		
		public var bgColour:uint;
		public var bgImg:Bitmap;
		
		public function FmProgressBar()
		{
			//TODO: implement function
			super();
			
			sprite1 = new Sprite();
			process0 = new ProgressBar();
			
		}
		
		public function FmBuild():void{
			this.addChild(sprite1);
			this.addChild(process0);
		}
		
		public function get bgAlpha():Number{
			return sprite1.alpha;
		}
		public function set bgAlpha(value:Number):void{
			sprite1.alpha = value;
		}
		
		
		
		public function get barColour():uint{
			return process0.getStyle("barColor");
		}
		public function set barColour(value:uint):void{
			process0.setStyle("barColor", value);
		}
		public function get barLabel():String{
			return process0.label;
		}
		public function set barLabel(value:String):void{
			process0.label = value;
		}
		public function get barLength():uint{
			return process0.width;
		}
		public function set barLength(value:uint):void{
			process0.width = value;
		}
		public function get barTall():uint{
			return process0.height;
		}
		public function set barTall(value:uint):void{
			process0.height = value;
		}
		public function get _width():Number{
			return this.width;
		}
		public function set _width(value:Number):void{
			this.width = value;
			process0.x = value/2 - process0.width/2;
			
		}
		public function get _height():Number{
			return this.height;
		}
		public function set _height(value:Number):void{
			this.height = value;
			sprite1.height = value;
			process0.y = value/2 - 30;
		}
		public function set s_width(value:Number):void{
			this.sprite1.width = value;
		}
		/**
		 * 指定一种简单的单一颜色填充，在绘制时该填充将在随后对其他 Graphics 方法（如 lineTo() 或 drawCircle()）的调用中使用。 
		 * @param uint color
		 * @param Number alpha (0.0~1.0)
		 * 
		 */
		public function bgFill(_color:uint, _alpha:Number):void{
			sprite1.graphics.beginFill(_color, _alpha);
		}
		
		
		/**
		 * 绘制一个矩形。在调用 drawRect() 方法之前，通过调用 linestyle()、lineGradientStyle()、beginFill()、beginGradientFill() 或 beginBitmapFill() 方法来设置线条样式或/和填充。
		 * @param _x:Number 一个表示相对于父显示对象注册点的水平位置的数字（以像素为单位）。
		 * @param _y:Number 一个表示相对于父显示对象注册点的垂直位置的数字（以像素为单位）。
		 * @param _width:Number 矩形的宽度（以像素为单位）。
		 * @param _height:Number 矩形的高度（以像素为单位）。
		 * 
		 */
		public function bgDrawRect(_x:Number, _y:Number, _width:Number, _height:Number):void{
			sprite1.graphics.drawRect(_x, _y, _width, _height);
			
		}
		
		public function getswidth():Number{
			return this.sprite1.width;
		}
	}
}